package com.ynny.controller;

import com.alibaba.csp.sentinel.annotation.SentinelResource;
import com.ynny.blockhandler.monitorBlockHandler;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class testController {
        /**
     * Sentinel资源注解，用于定义资源的限流、降级等监控配置
     *
     * value 资源名称，标识该资源在Sentinel中的唯一标识符
     * blockHandler 限流处理方法名，当触发限流时调用的方法名称
     * blockHandlerClass 限流处理方法所在的类，指定处理方法的实现类
     *
     * 该注解将方法标记为Sentinel监控的资源，当访问该资源时会根据配置的规则进行流量控制，
     * 如果触发限流则会调用指定的处理方法进行降级处理。
     */
    @GetMapping("/test")
    @SentinelResource(value = "helloHandleTest",blockHandler = "helloHandle",blockHandlerClass = monitorBlockHandler.class)
    public String test(){
        return "hello world";
    }


//    关联接口
    @GetMapping("/test2")
    public String test2(){
        return "关联接口！";
    }
}
